The R markdown is available from the pulldown menu for Code at the upper-right, choose “Download Rmd”, or download the Rmd from GitHub.
Installation
if(!"RCy3" %in% installed.packages()){
install.packages("BiocManager")
BiocManager::install("RCy3")
}
library(RCy3)
Required software
RCy3 works by connecting with Cytoscape. You will need to install and launch Cytoscape:
Jupyter Bridge
Jupyter-Bridge is a Flask service that executes on a server accessible to both a remote Jupyter server and browser-based Jupyter client. Code running on the server calls Jupyter-Bridge to queue a request that the client will execute, and the client will use Jupyter-Bridge to return a reply. This enables a workflow running on remote Jupyter to execute functions on a PC-local Cytoscape – the remote Jupyter runs the request through Jupyter-Bridge, where it is picked up by Javascript code running on the Jupyter web page in the PC-local browser, which in turn calls Cytoscape. The Cytoscape response travels the reverse route.
Jupyter-Bridge allows a remote Jupyter Notebook to communicate with a workstation-based Cytoscape as if the Notebook were running on the Cytoscape workstation. A Jupyter Notebook passes a Cytoscape call to an independent Jupyter-Bridge server where it’s picked up by the Jupyter-Bridge browser component and is passed to Cytoscape. The Cytoscape response is returned via the opposite flow. As a result, workflows can reside in the cloud, access cloud resources, and yet still leverage Cytoscape features.
Connect to local Cytoscape remotely
browserClientJs <- getBrowserClientJs()
IRdisplay::display_javascript(browserClientJs)
Check connection
cytoscapeVersionInfo()
cytoscapePing()
LS0tCnRpdGxlOiAiSnVweXRlciBCcmlkZ2UgYW5kIFJDeTMiCmF1dGhvcjogIllpaGFuZyBYaW4sIEFsZXggUGljbyIKb3V0cHV0OiBodG1sX25vdGVib29rCi0tLQoKYGBge3Igc2V0dXAsIGluY2x1ZGU9RkFMU0V9CmtuaXRyOjpvcHRzX2NodW5rJHNldChlY2hvID0gVFJVRSkKYGBgCipUaGUgUiBtYXJrZG93biBpcyBhdmFpbGFibGUgZnJvbSB0aGUgcHVsbGRvd24gbWVudSBmb3IqIENvZGUgKmF0IHRoZSB1cHBlci1yaWdodCwgY2hvb3NlICJEb3dubG9hZCBSbWQiLCBvciBbZG93bmxvYWQgdGhlIFJtZCBmcm9tIEdpdEh1Yl0oaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2N5dG9zY2FwZS9jeXRvc2NhcGUtYXV0b21hdGlvbi9tYXN0ZXIvZm9yLXNjcmlwdGVycy9SL25vdGVib29rcy9qdXB5dGVyLWJyaWRnZS1yY3kzLlJtZCkuKgoKPGhyIC8+CgojIEluc3RhbGxhdGlvbgpgYGB7cn0KaWYoISJSQ3kzIiAlaW4lIGluc3RhbGxlZC5wYWNrYWdlcygpKXsKICAgIGluc3RhbGwucGFja2FnZXMoIkJpb2NNYW5hZ2VyIikKICAgIEJpb2NNYW5hZ2VyOjppbnN0YWxsKCJSQ3kzIikKfQpsaWJyYXJ5KFJDeTMpCmBgYAoKIyBSZXF1aXJlZCBzb2Z0d2FyZQpSQ3kzIHdvcmtzIGJ5IGNvbm5lY3Rpbmcgd2l0aCBDeXRvc2NhcGUuIFlvdSB3aWxsIG5lZWQgdG8gaW5zdGFsbCBhbmQgbGF1bmNoIEN5dG9zY2FwZToKCiogRG93bmxvYWQgdGhlIGxhdGVzdCBDeXRvc2NhcGUgZnJvbSBodHRwOi8vd3d3LmN5dG9zY2FwZS5vcmcvZG93bmxvYWQucGhwCiogQ29tcGxldGUgaW5zdGFsbGF0aW9uIHdpemFyZAoqIExhdW5jaCBDeXRvc2NhcGUKCiMgSnVweXRlciBCcmlkZ2UKCkp1cHl0ZXItQnJpZGdlIGlzIGEgRmxhc2sgc2VydmljZSB0aGF0IGV4ZWN1dGVzIG9uIGEgc2VydmVyIGFjY2Vzc2libGUgdG8gYm90aCBhIHJlbW90ZSBKdXB5dGVyIHNlcnZlciBhbmQgYnJvd3Nlci1iYXNlZCBKdXB5dGVyIGNsaWVudC4gQ29kZSBydW5uaW5nIG9uIHRoZSBzZXJ2ZXIgY2FsbHMgSnVweXRlci1CcmlkZ2UgdG8gcXVldWUgYSByZXF1ZXN0IHRoYXQgdGhlIGNsaWVudCB3aWxsIGV4ZWN1dGUsIGFuZCB0aGUgY2xpZW50IHdpbGwgdXNlIEp1cHl0ZXItQnJpZGdlIHRvIHJldHVybiBhIHJlcGx5LiBUaGlzIGVuYWJsZXMgYSB3b3JrZmxvdyBydW5uaW5nIG9uIHJlbW90ZSBKdXB5dGVyIHRvIGV4ZWN1dGUgZnVuY3Rpb25zIG9uIGEgUEMtbG9jYWwgQ3l0b3NjYXBlIC0tIHRoZSByZW1vdGUgSnVweXRlciBydW5zIHRoZSByZXF1ZXN0IHRocm91Z2ggSnVweXRlci1CcmlkZ2UsIHdoZXJlIGl0IGlzIHBpY2tlZCB1cCBieSBKYXZhc2NyaXB0IGNvZGUgcnVubmluZyBvbiB0aGUgSnVweXRlciB3ZWIgcGFnZSBpbiB0aGUgUEMtbG9jYWwgYnJvd3Nlciwgd2hpY2ggaW4gdHVybiBjYWxscyBDeXRvc2NhcGUuIFRoZSBDeXRvc2NhcGUgcmVzcG9uc2UgdHJhdmVscyB0aGUgcmV2ZXJzZSByb3V0ZS4KCkp1cHl0ZXItQnJpZGdlIGFsbG93cyBhIHJlbW90ZSBKdXB5dGVyIE5vdGVib29rIHRvIGNvbW11bmljYXRlIHdpdGggYSB3b3Jrc3RhdGlvbi1iYXNlZCBDeXRvc2NhcGUgYXMgaWYgdGhlIE5vdGVib29rIHdlcmUgcnVubmluZyBvbiB0aGUgQ3l0b3NjYXBlIHdvcmtzdGF0aW9uLiBBIEp1cHl0ZXIgTm90ZWJvb2sgcGFzc2VzIGEgQ3l0b3NjYXBlIGNhbGwgdG8gYW4gaW5kZXBlbmRlbnQgSnVweXRlci1CcmlkZ2Ugc2VydmVyIHdoZXJlIGl04oCZcyBwaWNrZWQgdXAgYnkgdGhlIEp1cHl0ZXItQnJpZGdlIGJyb3dzZXIgY29tcG9uZW50IGFuZCBpcyBwYXNzZWQgdG8gQ3l0b3NjYXBlLiBUaGUgQ3l0b3NjYXBlIHJlc3BvbnNlIGlzIHJldHVybmVkIHZpYSB0aGUgb3Bwb3NpdGUgZmxvdy4gQXMgYSByZXN1bHQsIHdvcmtmbG93cyBjYW4gcmVzaWRlIGluIHRoZSBjbG91ZCwgYWNjZXNzIGNsb3VkIHJlc291cmNlcywgYW5kIHlldCBzdGlsbCBsZXZlcmFnZSBDeXRvc2NhcGUgZmVhdHVyZXMuCgojIENvbm5lY3QgdG8gbG9jYWwgQ3l0b3NjYXBlIHJlbW90ZWx5CmBgYHtyfQpicm93c2VyQ2xpZW50SnMgPC0gZ2V0QnJvd3NlckNsaWVudEpzKCkKSVJkaXNwbGF5OjpkaXNwbGF5X2phdmFzY3JpcHQoYnJvd3NlckNsaWVudEpzKQpgYGAKCiMgQ2hlY2sgY29ubmVjdGlvbgpgYGB7cn0KY3l0b3NjYXBlVmVyc2lvbkluZm8oKQpjeXRvc2NhcGVQaW5nKCkKYGBgCgojIEV4ZWN1dGUgRGlmZmVyZW50aWFsbHkgRXhwcmVzc2VkIEdlbmVzIE5ldHdvcmsgcmVtb3RlbHkKVmlzaXQgdGhlIFtKdXB5dGVyIEJyaWRnZSBhbmQgRGlmZmVyZW50aWFsbHkgRXhwcmVzc2VkIEdlbmVzIE5ldHdvcmsgQW5hbHlzaXNdKGh0dHBzOi8vZ2l0aHViLmNvbS9jeXRvc2NhcGUvY3l0b3NjYXBlLWF1dG9tYXRpb24vYmxvYi9tYXN0ZXIvZm9yLXNjcmlwdGVycy9SL25vdGVib29rcy9qdXB5dGVyLWJyaWRnZS1yY3kzLmlweW5iKSBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KCg==